Skip to main content

Webhook Details

This page contains a complete list of available Branch webhooks, with descriptions and examples.

Account Verified as Worker

This webhook is triggered when a Branch user is verified as a worker on an organization's roster. Routing and account number will return null if the user's wallet has not yet been created.

Example

{
"event": "ACCOUNT_VERIFIED_AS_WORKER",
"event_id": "123124-23412-123-124",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"first_name": "John",
"last_name": "Doe",
"employee_id": "123",
"account_number": "1234567891234567",
"routing_number": "084106768",
"email_address": "john.doe@branchapp.com",
"phone_number": "5551234567"
}
}
 
 

Account Review

This webhook is triggered when a user has been flagged for manual review.

Example

{
"event": "ACCOUNT_REVIEW",
"event_id": "123124-23412-123-124",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123",
"onboarding_link": "https://branchapp.com/ol1"
}
}
 
 

Advance Adjustment

This webhook is triggered when an adjustment is made to an advance to a worker.

Example

{
"event": "ADVANCE_ADJUSTMENT",
"event_id": "123124-23412-123-124",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"adjustment_amount": 641,
"advance_id": "18d99mn3bvf78094",
"employee_id": "123",
"original_outstanding_amount": 99,
"outstanding_amount": 444,
"timestamp": "2023-12-30T15:40:32-08:00",
"type": "tp_pull"
}
}
 
 

Advance Claimed

This webhook is triggered when a worker claims an advance.

Example

{
"event": "ADVANCE_CLAIMED",
"event_id": "123124-23412-123-124",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"advance_id": "123456",
"amount": 12345,
"employee_id": "123",
"timestamp": "2023-12-30T15:40:32-08:00"
}
}
 
 

Card Activated

This webhook is triggered when a user activates their card.

Example

{
"event": "CARD_ACTIVATED",
"event_id": "123124-23412-123-124",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123",
"marqeta_card_token": "Acme_1099_Physical",
"card_product": "Acme_1099",
"card_type": "[PHYSICAL, VIRTUAL, UNKNOWN]",
"time_emitted": "T15:40:32-08:00"
}
}
 
 

Card Deactivated

This webhook is triggered when a user deactivates their card.

Example

{
"event": "CARD_DEACTIVATED",
"event_id": "123124-23412-123-124",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123",
"marqeta_card_token": "Acme_1099_Virtual",
"card_product": "Acme_1099",
"card_type": "[PHYSICAL, VIRTUAL, UNKNOWN]",
"reason_code": "USER_REQUESTED",
"time_emitted": "T15:40:32-08:00"
}
}
 
 

Invoice Created

This webhook is triggered when an invoice is created.

Example

{
"event": "INVOICE_CREATED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"id": 399742129664,
"amount": 12456,
"description": "Invoice created for John Doe",
"filename": "j_doe_invoice_11",
"due_date": "01-01-2024"
}
}
 
 

Invoice Overdue

This webhook is triggered when an invoice is overdue.

Example

{
"event": "INVOICE_OVERDUE",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"id": 399742129664,
"amount": 12456,
"description": "Invoice not paid by due date",
"due_date": "01-01-2024"
}
}
 
 

Invoice Transfer Initiated

This webhook is triggered when an invoice transfer is initiated.

Example

{
"event": "INVOICE_TRANSFER_INITIATED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"invoice_id": 399742129664,
"amount": 12345,
"description": "Invoice transfer for John Doe"
}
}
 
 

KYC Fallback Failed

This webhook is triggered when KYC fallback ID upload verification has failed. This means that the user is not payable through Branch.

Example

{
"event": "KYC_FALLBACK_FAILED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123"
}
}

 
 

Organization Initialized Account Claimed

This webhook is triggered when an organization's initialized account is claimed.

Example

{
"event": "ORGANIZATION_INITIALIZED_ACCOUNT_CLAIMED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123"
}
}
 
 

Organization Initialized Account Claimed

This webhook is triggered when an organization's initialized account is created.

Example

{
"event": "ORGANIZATION_INITIALIZED_ACCOUNT_CREATED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123",
"account_number": "123456789",
"routing_number": "084106768",
"onboarding_link": "https://branchapp.com/ol1"
}
}
 
 

Wallet Created

This webhook is triggered when the user passes KYC and a wallet is created.

Example

{
"event": "WALLET_CREATED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123",
"account_number": "1234567891234567",
"routing_number": "084106768",
"onboarding_link": "https://branchapp.com/ol1"
}
}
 
 

Wallet Claimed

This webhook is triggered when a user downloads the application and claims a pre-initialized account.

Example

{
"event": "WALLET_CLAIMED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123"
}
}
 
 

Wallet Activated

When a worker's identity is verified a wallet is created, but is not usable until the user passes additional KYC checks. When those KYC checks pass, this event is triggered.

Example

{
"event": "WALLET_ACTIVATED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123",
"account_number": "1234567891234567",
"routing_number": "084106768",
"onboarding_link": "https://branchapp.com/ol1",
"is_claimed": false
}
}

is_claimed = false: Initial onboarding after passing KYC checks.

is_claimed = true: Reclaiming of a previously created and claimed wallet.

 
 

Wallet Deactivated

Anytime a worker's wallet gets deactivated, this event is triggered.

This could be due to Branch confirming the user as a fraud user, or the user requesting that their account be closed.

Example

{
"event": "WALLET_DEACTIVATED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123",
"account_number": "1234567891234567",
"routing_number": "084106768",
"reason_code": "USER_REQUESTED",
"reason": "Worker Resigned",
"is_claimed": true
}
}

is_claimed = false: The wallet was not created after failed Branch fraud checks.

is_claimed = true: A wallet that was created and claimed is now being deactivated.

 
 

Wallet Closed

This webhook is triggered when a wallet is closed. The worker is reset and can onboard again.

Example

{
"event": "WALLET_CLOSED",
"event_id": "69a9d1ab-b646-4b69-8f45-49b6ac617282",
"client_type": "ORGANIZATION",
"client_id": "100000",
"data": {
"employee_id": "123",
"account_number": "123456789",
"routing_number": "987654321"
}
}